今天來解第14題
一個陣列中有許多個字串,寫一個function找出這些字串最長的共同字首。
檢查空輸入:
strs
為空,直接返回空字串。初始化最長前綴:
strs[0]
。逐一檢查每個字串:
indexOf()
函數檢查當前字串是否以目前的最長前綴開頭:
返回結果:
var longestCommonPrefix = function (strs) {
if (!strs.length) return '';
let prefix = strs[0];
for (let i = 1; i < strs.length; i++) {
while (strs[i].indexOf(prefix) !== 0) {
prefix = prefix.slice(0, -1);
if (prefix === '') return '';
}
}
return prefix;
};